<html>
  <head>
    <title>
      获取接口调用凭证
    </title>
  </head>
  <body>
    <script>
      // https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/mp-access-token/getAccessToken.html

      /*
          一、接口说明

                  1、接口名称

                            getAccessToken

                  2、功能描述

                            ①、获取小程序 "全局唯一" 后台接口的调用凭证，token有效期 7200秒（两个小时），开发者需要妥善保存
                            
                            ②、如使用云开发，可通过云调用免维护 access_token 调用

                            ③、如使用云托管，也可以通过微信令牌/开放接口服务免维护 access_token 调用。

                  3、注意事项

                          ★、AppSecret 安全提醒

                               AppSecret是账号使用"后台API接口"的 "小程序密钥"，请开发者妥善保管，避免因为泄露造成账号被其他人冒用等风险。

                               如长期五AppSecret的使用需求，开发者可以使用管理员账号登录小程序凭条，

                               在“开发-开发管理”中对AppSecret进行冻结，提高账号安全性。

                               AppSecret冻结后，开发者无法使用AppSecret获取 AccessToken （接口返回错误码 40243）,不影响账号基本功能的正常使用，

                               不影响通过第三方授权调用后台接口，不影响云开发调用后台接口。

                               开发者可以随时使用管理员账号登录小程序平台，在“开发-开发管理”中对AppSecret进行解冻。
      */

      /*
          二、调用方式

                    1、Https调用

                            GET  https://api.weixin.qq.com/cgi-bin/token

                    2、请求参数

                                        属性	                  类型	        必填	        说明

                                    ①、grant_type（授权类型）	 string	        是	        填写  "client_credential"  （客户端凭证）

                                    ②、appid                  string         是          小程序唯一凭证，即AppID，可在 「微信公众平台 - 设置 - 开发设置」页中获得。
                                                                                        (需要已经成为开发者，且账号没有异常状态)

                                    ③、secret                 string         是          小程序唯一凭证密钥，即AppSecret，获取方式同appid


                     3、返回参数

                                        属性	                类型	          说明

                                  ①、access_token           string           获取到的后台API访问凭证(令牌)

                                  ②、expires_in             number           凭证有效时间，单位：秒。 目前是7200秒之内的值


      */

      /*
            三、其他说明

                        ★、access_token 的存储与更新

                                    1、access_token 的存储至少要保留 512 个字符空间；

                                    2、access_token 的有效期目前为 2 个小时，需定时刷新，重复获取将导致上次获取的 access_token 失效

                                    3、建议开发者使用中控服务器统一获取和刷新 access_token,其他业务逻辑服务器所使用access_token 均来自于该中控服务器，

                                      不应该各自去刷新，否则容易造成冲突，导致 access_token 覆盖二营销业务。

                                    4、access_token 的有效期通过返回的 expires_in 来传达，目前是7200秒之内的值，中控服务器需要根据这个有效时间提前去刷新。

                                          在刷新过程中，中控服务器可对外继续输出的老 access_token，此时公众平台后台会保证在5分钟内，新老 access_token 都可用，这保证了第三方业务的平滑过渡；

                                    5、access_token 的有效时间可能会在未来有调整，所以中控服务器不仅需要内部定时主动刷新，还需要提供被动刷新 access_token 的接口，
                                    
                                        这样便于业务服务器在API调用获知 access_token 已超时的情况下，可以触发 access_token 的刷新流程。


                        ★、免维护 access_token 的场景

                                    1、云托管：

                                                通过微信令牌免维护 access_token 发起服务端调用，在调用微信服务端接口时，
                                                
                                                将 URL 上的 access_token 参数改成 cloudbase_access_token，值通过微信令牌取得。

                                                调用微信支付也可以免维护鉴权和支付证书信息，避免证书泄漏风险。
                                    2、云开发：

                                                通过云开发云调用免维护 access_token 调用。

                                                调用微信支付也可以免维护鉴权和支付证书信息，避免证书泄漏风险。
      */

      /*
             四、在线调试  

                        (很重要的调试工具！！！！)

                        开发者可以使用网页调试工具调试该接口。

                        https://mp.weixin.qq.com/debug/cgi-bin/apiinfo?t=index&type=%E5%9F%BA%E7%A1%80%E6%94%AF%E6%8C%81&form=%E8%8E%B7%E5%8F%96access_token%E6%8E%A5%E5%8F%A3%20/token&token=&lang=zh_CN
      */

      /*
             五、调用示例

                        1、请求数据示例

                                    GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

                        2、返回数据示例

                                    {
                                      "access_token":"ACCESS_TOKEN",
                                      "expires_in":7200
                                    }
      */


      /*
             六、错误码

                      https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/mp-access-token/getAccessToken.html
      */
    </script>
  </body>
</html>